const {graphql,buildSchema} = require('graphql')
const  express =require('express')
const {graphqlHTTP} = require('express-graphql')

const cors = require('cors')


// 1.构建 schema：Query（查询）
const schema = buildSchema(`
    type Query {
        name:String,
        age:Int
    }
`)

// 2.定义 schema 的 resolver（查询的时候值是什么）
const root = {
    // 查询 name 时会调用当前函数，返回值就是结果（需要符合 schema 类型）
    name(){
        return 'xm'
    },
    age(){
        return 12
    }
}

// 3.创建 express 实例、挂载中间件
const app = express()
app.use(cors()) // 允许跨域
app.use('/graphql',graphqlHTTP({
    schema,
    rootValue:root,
    graphiql:true //开启 IDE 工具
}))
app.listen(3000)
